#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>

//struct ListNode
//{
//    int val;
//    struct ListNode* next;
//};
//
//struct ListNode* detectCycle(struct ListNode* head) {
//    struct ListNode* fast = head;
//    struct ListNode* slow = head;
//    while (fast && fast->next)
//    {
//        slow = slow->next;
//        fast = fast->next->next;
//        if (slow == fast)
//        {
//            struct ListNode* meet = fast;
//            struct ListNode* first = head;
//            while (meet != first)
//            {
//                meet = meet->next;
//                first = first->next;
//            }
//            return meet;
//        }
//    }
//    return NULL;
//}